#ifndef VINCENTY_CPP
#define VINCENTY_CPP

#include <math.h>

class VincentyGEO
{
public:
    const double geoa = 6378137.0;
    const double geob = 6356752.3142;
    const double geof = (geoa - geob) / geoa;
    const double geoPI = 3.1415926535897932;
    const double geoD2R = (geoPI/180.0);
    const double geoR2D = (180.0/geoPI);
	
public:
    void GetDistanceAndBearing(double originLat, double originLon, double destLat, double destLon, double& distance, double& bearing);
    double GetPointByDistanceAndBearing(double originLat, double originLon, double distance, double bearing, double& destLat, double& destLon);
    void todms(double deg, double& d, double& m, double& s);
    double todeg(double d, double m, double s);
}; 

#endif 
